package com.pet.mapper;

import com.pet.pojo.SysSmallDog;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;

/**
 * 小型犬信息数据访问层
 */
@Mapper
public interface SysSmallDogMapper {

    /**
     * 查询所有小型犬
     * 
     * @return 小型犬列表
     */
    List<SysSmallDog> findAll();

    /**
     * 根据条件查询小型犬
     * 
     * @param params 查询条件
     * @return 小型犬列表
     */
    List<SysSmallDog> findByCondition(Map<String, Object> params);

    /**
     * 添加小型犬
     * 
     * @param smallDog 小型犬信息
     * @return 影响的行数
     */
    int insert(SysSmallDog smallDog);

    /**
     * 更新小型犬信息
     * 
     * @param smallDog 小型犬信息
     * @return 影响的行数
     */
    int update(SysSmallDog smallDog);

    /**
     * 删除小型犬
     * 
     * @param id 小型犬ID
     * @return 影响的行数
     */
    int delete(Integer id);

    /**
     * 根据ID查询小型犬
     * 
     * @param id 小型犬ID
     * @return 小型犬信息
     */
    SysSmallDog findById(Integer id);

    /**
     * 统计符合条件的小型犬总数
     * 
     * @param params 查询条件
     * @return 符合条件的小型犬总数
     */
    int countByCondition(Map<String, Object> params);

    /**
     * 批量更新小型犬状态
     * 
     * @param ids    小型犬ID列表
     * @param status 新状态
     * @return 影响的行数
     */
    int updateStatus(@Param("ids") List<Integer> ids, @Param("status") Integer status);
} 